package com.yimils.core.sys.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yimils.core.sys.entity.RoleResourceEntity;
import com.yimils.core.sys.po.RoleResourceDo;
import com.yimils.core.sys.po.UserMenuDo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface RoleResourceMapper extends BaseMapper<RoleResourceEntity> {
    List<RoleResourceDo> getRoleResource(@Param("roleId") Long roleId, @Param("parentId") Long parentId);
    List<RoleResourceDo> getRoleParentResource(@Param("roleId") Long roleId);
    List<UserMenuDo> getUserMenu(@Param("roleId") Long roleId);
    List<UserMenuDo> getUserSubMenu(@Param("roleId") Long roleId, @Param("parentId") Long parentId);
    List<UserMenuDo> getAdminMenu();
    List<UserMenuDo> getAdminSubMenu(@Param("parentId") Long parentId);
    void cleanActiveForRole(@Param("roleId") Long roleId);
    List<UserMenuDo> getMenuDirs();

    List<RoleResourceDo> getRoleResourceMidParent(@Param("roleId") Long roleId);
    List<RoleResourceDo> getRoleResourceEndpoint(@Param("roleId") Long roleId, @Param("name") String name);

}
